package exercicio;

import java.util.Scanner;

public class Principal {
	static Funcionario funcionario;
	static Gerente gerente;

	public static void main(String[] args){
		byte x=0;
		String sErro = "";
		double dErro = 0;
		byte bErro = 0;
		Scanner s = new Scanner(System.in);
		
		while (x != 1 && x != 2){
			System.out.println("Digite 1 para funcionario e 2 para gerente");
			x = s.nextByte();
			while(true){
			if (x==1){
				Funcionario funcionario = new Funcionario ();
				
				System.out.println("Digite um nome");
				sErro = s.next();
				if (UtilVini.valorVazio(sErro)){
					funcionario.setNome(sErro);
				}
				else {
					System.out.println("Valor invalido");
					continue;
				}
				
				System.out.println("Digite uma idade");
				bErro = s.nextByte();
				if (UtilVini.idadeValida(bErro)){
					funcionario.setIdade(bErro);
				}
				else {
					System.out.println("Valor invalido");
					continue;
				}
				
				System.out.println("Digite um sexo");
				sErro = s.next();
				if (UtilVini.valorVazio(sErro)){
					funcionario.setSexo(sErro);
				}
				else{
					System.out.println("Valor invalido");
					continue;
				}
				
				System.out.println("Digite um salario");
				dErro = s.nextDouble();
				if (UtilVini.salarioValido(dErro)){
					funcionario.setSalario(dErro);
				}
				else {
					System.out.println("Valor invalido");
					continue;
				}
				
				System.out.println("Digite um email");
				sErro = s.next();
				if (UtilVini.emailValido(sErro)){
					funcionario.setEmail(sErro);
				}
				else {
					System.out.println("Valor invalido");
					continue;
				}
				
				// mostrar ----------------
				System.out.println(funcionario.getNome());
				System.out.println(funcionario.getIdade());
				System.out.println(funcionario.getSexo());
				System.out.println(funcionario.getSalario());
				System.out.println(funcionario.getEmail());
			}
			
			else if (x==2){
				Gerente gerente = new Gerente ();
				
				System.out.println("Digite um nome");
				sErro = s.next();
				if (UtilVini.valorVazio(sErro)){
					gerente.setNome(sErro);
				}
				else {
					System.out.println("Valor invalido");
					continue;
				}
				
				System.out.println("Digite uma idade");
				bErro = s.nextByte();
				if (UtilVini.idadeValida(bErro)){
					gerente.setIdade(bErro);
				}
				else {
					System.out.println("Valor invalido");
					continue;
				}
				
				System.out.println("Digite um sexo");
				sErro = s.next();
				if (UtilVini.valorVazio(sErro)){
					gerente.setSexo(sErro);
				}
				else {
					System.out.println("Valor invalido");
					continue;
				}
				
				System.out.println("Digite um salario");
				dErro = s.nextDouble();
				if (UtilVini.salarioValido(dErro)){
					gerente.setSalario(dErro);
				}
				else {
					System.out.println("Valor invalido");
					continue;
				}
				
				System.out.println("Digite o plr");
				dErro = s.nextDouble();
				if (UtilVini.salarioValido(bErro)){
					gerente.setPlr(bErro);
				}
				else{
					System.out.println("Valor invalido");
					continue;
				}
				//mostrar ------------------------
				System.out.println(gerente.getNome());
				System.out.println(gerente.getIdade());
				System.out.println(gerente.getSexo());
				System.out.println(gerente.getSalario());
				System.out.println(gerente.getPlr());
			}
			
			else {
				System.out.println("Digite um valor valido");
				break;
			}
			}
		}
	}
}
